import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

// 迷宫问题
public class Day24 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int m = in.nextInt();
            int n = in.nextInt();
            // 题目其实说的已经很清楚了，只有唯一路径，所以直接使用 DFS 即可
            // PS：如果是多条路径选最短，需要使用 BFS

            // 1. 输入
            int[][] map = new int[m][n];
            for (int i = 0; i < m; i ++) {
                for (int j = 0; j < n ; j ++) {
                    map[i][j] = in.nextInt();
                }
            }
            // 2. 创建一个存储最短路径的数组
            List<Path> res = new ArrayList<>();
            // 3. 使用 dfs 搜索
            dfs(map, res, 0, 0);
            // 4. 打印结果
            for (Path path : res) {
                System.out.println("("+path.getX()+","+path.getY()+")");
            }
        }
    }
    private static boolean dfs(int[][] map, List<Path> path, int x, int y) {
        // 添加当前位置，并标记
        path.add(new Path(x, y));
        map[x][y] = 1;
        // 走到迷宫的尽头
        if (x == map.length - 1 && y == map[0].length - 1) {
            return true;
        }
        // 向右走
        if (y + 1 < map[0].length && map[x][y + 1] == 0) {
            if (dfs(map, path, x, y + 1)) {
                return true;
            }
        }
        // 向下走
        if (x + 1 < map.length && map[x + 1][y] == 0) {
            if (dfs(map, path, x + 1, y)) {
                return true;
            }
        }
        // 向左走
        if (y - 1 > -1 && map[x][y - 1] == 0) {
            if (dfs(map, path, x, y - 1)) {
                return true;
            }
        }
        // 向上走
        if (x - 1 > -1 && map[x - 1][y] == 0) {
            if (dfs(map, path, x - 1, y)) {
                return true;
            }
        }
        // 上述四种情况都不符合，则回溯
        path.remove(path.size() - 1);
        map[x][y] = 0;
        return false;
    }

    static class Path {
        private int x;
        private int y;
        public Path(int x, int y) {
            this.x = x;
            this.y = y;
        }
        public int getX() {
            return this.x;
        }
        public int getY() {
            return this.y;
        }
    }
}
